package Principal;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.StringTokenizer;

import Controlador.ControladorVistaPrincipal;
import Modelo.Arbitro;
import Modelo.Equipo;
import Modelo.Fecha;
import Modelo.Partido;
import Vista.VistaPrincipal;

public class Main {


		    
public static void main(String[] args) throws NumberFormatException, IOException {
		    new ControladorVistaPrincipal();
	/*Date d,d1;
    Equipo e1,e2;
    d= new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("dd");
    Partido p;
    List<Partido> partidos = new ArrayList<Partido>();
    Fecha fIda,fVuelta;
    List<Fecha> fechas= new ArrayList<Fecha>();
    List<Equipo> equipo= new ArrayList<Equipo>();
    e1= new Equipo();
    e1.setNombre("1");
    e1.setCodigo("1");
    equipo.add(e1);
    e1= new Equipo();
    e1.setNombre("2");
    e1.setCodigo("2");
    equipo.add(e1);
    e1= new Equipo();
    e1.setNombre("3");
    e1.setCodigo("3");
    equipo.add(e1);
    e1= new Equipo();
    e1.setNombre("4");
    e1.setCodigo("4");
    equipo.add(e1);
   
    int h=0;
    while(h<equipo.size()-1){
    	fIda= new Fecha();
		fVuelta= new Fecha();
		for(int i=0;(i<equipo.size()-1 && (fIda.getPartidos().size()!=(equipo.size()/2)));++i){	
			for(int j=i+1;(j<equipo.size() && (fIda.getPartidos().size()!=(equipo.size()/2)) );++j){
				if(!fIda.buscarEquipo(equipo.get(i).getCodigo()) && !fIda.buscarEquipo(equipo.get(j).getCodigo())){
					if(!fechas.isEmpty()){
						for(Fecha f: fechas){
							if(!f.buscarPartido(equipo.get(i).getCodigo(),equipo.get(j).getCodigo())){
								p = new Partido("Ida "+(i*j), equipo.get(i), equipo.get(j), null, 0);
									p.setArbitro(new Arbitro());
									fIda.getPartidos().add(p);
									p = new Partido("Vuelta "+(i*j),  equipo.get(j), equipo.get(i), null, 0);
									p.setArbitro(new Arbitro());
									fVuelta.getPartidos().add(p);
									break;
							}
							else;
						}
					}
					else{
						p = new Partido("Ida "+(i*j), equipo.get(i), equipo.get(j), null, 0);
						p.setArbitro(new Arbitro());
						fIda.getPartidos().add(p);
						p = new Partido("Vuelta "+(i*j),  equipo.get(j), equipo.get(i), null, 0);
						p.setArbitro(new Arbitro());
						fVuelta.getPartidos().add(p);
					}
				}
			}
		}
		fechas.add(fIda);
		fechas.add(fVuelta);
		d1=new Date(d.getYear(),d.getMonth(),Integer.parseInt(sdf.format(d))+((equipo.size()-2)*7));
		fIda.setFecha(d);
		fVuelta.setFecha(d1);
		d=new Date(d.getYear(),d.getMonth(),Integer.parseInt(sdf.format(d))+7);
		h++;
		}
    for (Fecha f : fechas) {
		System.out.println(f.getFecha());
		for (Partido o  : f.getPartidos()) {
			System.out.println(o.getEquipoCasa().getNombre()+" "+o.getEquipoVisitante().getNombre());
		}
		    /*
		    File f = new File("equipoA.txt");
	System.out.println(f.getAbsolutePath());
	BufferedReader br = new BufferedReader(new FileReader(f.getAbsoluteFile()));
	String linea=null;
	
	
	while ((linea =br.readLine()) != null)
	{
		StringTokenizer mistokens = new StringTokenizer(linea, ","); 
		
  String cedula = mistokens.nextToken().trim();
  String nombre=mistokens.nextToken().trim();
  String apellido=mistokens.nextToken().trim();
  String fechaNacimiento=mistokens.nextToken().trim();
  String posicion=mistokens.nextToken().trim();
  int goles=Integer.parseInt(mistokens.nextToken().trim());
  
  System.out.println("Cedula"+cedula);
  System.out.println("Nombre"+nombre);
  System.out.println("Apellido"+apellido);
  System.out.println("Fecha de nacimiento"+fechaNacimiento);
  System.out.println("Posicion"+posicion);
  System.out.println("Goles"+goles);

		    }
    }}*/
		    }
		
	}


